草庐IT

Android AsyncTask 内存泄漏

全部标签

php - PHP 是否根据其限制动态处理内存使用情况?

当PHP的memory_limit设置为50M时,我有一个脚本在大约25秒的运行时成功运行。当我在脚本末尾打印memory_get_peak_usage时,它非常接近50M。当我将memory_limit设置得更高,到90M时,memory_get_peak_usage显示大约75M并且脚本加载速度大约快10秒。不管memory_limit是多少,脚本都会使用大约相同数量的内存,这似乎很直观,但事实似乎并非如此。如果一个脚本在50M的限制下达到50M以下,我预计即使memory_limit增加了,峰值使用量也会相同。我唯一的解释是PHP认识到它接近极限并花时间清除未使用的内存以避免达到

PHP-CLI - 如何减少启动 PHP 进程所需的内存使用量

当PHP进程启动时,它会加载扩展、各种配置指令并创建全局/环境变量等,(我假设)这会耗尽内存。我的目标是引导一个简单的PHP脚本,该脚本使用尽可能少的内存来完成特定任务。示例CLI脚本,例如:printf("\nHelloWorld");上面的代码不依赖于任何默认打开的$_ENV变量或某些PHP流,如果它们不存在,将使PHP进程使用更少的内存。为了运行上面概述的代码,你们会怎么做才能将内存使用量降至最低? 最佳答案 为了获得几个字节,您可以在干净的环境中运行您的PHP代码:env-iphp-r'var_dump(memory_get

php - 内存缓存安装错误

当我尝试通过命令行在windowsxp中使用xampp安装memcached时,如下所示:pecl安装内存缓存我在命令窗口中收到此错误:错误:DSPmemcached.dsp不存在。1-问题是什么?2-如果无法解决如何编译memcached包直接从pecl下载它? 最佳答案 你可能lookhere对于相关问题。看起来可用于PHPWindows的扩展有限,memcached可能还没有为pecl4win构建。有alink关于如何在Windows上构建自己的PHP的另一个问题,或者您可能会询问其他人是否可以在邮件列表上进行构建:lists

PHP脚本内存泄漏问题

我正在从命令行运行下面的PHP代码。问题是,它的内存消耗远远超过它应该的。在我的一生中,我无法弄清楚内存在何处被消耗。for($i=0;$iscrapeClassInfo($classObject,$termMap,$subjectMap);unset($classDOM);}根据我的说法,我的脚本消耗的内存在每次循环迭代后应该或多或少保持不变。当其成员超出范围时,$scraper->scrapeClassInfo()消耗的任何内存都应被释放。这是我得到的输出文件。为了简洁起见,我每隔10行显示一次输出:0:576716810:1205862420:1835008030:2490368

php - 我的脚本如何同时耗尽内存和执行时间?

我知道我会用完一些东西,因为我正在运行一项非常长的任务。这不是问题。我很好奇,我是如何同时出现这两个错误的?Fatalerror:Allowedmemorysizeof805306368bytesexhausted(triedtoallocate71bytes)in...--Fatalerror:Maximumexecutiontimeof300secondsexceededinUnknownonline0第一个“致命”错误不应该停止执行吗?我正在运行APC和php5.2.6。编辑:Hereisascreenshot 最佳答案 可能

php - PHP copy()如何处理内存

我需要使用PHP的copy()函数将文件从一个位置复制到另一个位置。我有意不使用rename()。文件大小为500MB到1GB。似乎在我启动PHP脚本后移动它们大约需要10-20秒(每次执行处理一个文件)。由于max_execution_time、post_max_size、upload_max_filesize和memory_limit值,我的服务器拒绝上传这些文件,所有这些都设置得高得离谱,但服务器会在我尝试上传时超时。现在我担心如果在站点处理大量流量时运行此copy()操作,服务器将会失败。所以我的问题是,PHP的copy()的运行方式是否会使服务器的内存和/或执行时间限制过载?

php - 内存缓存性能

我感觉我网站的Memcached查询速度比Mysql慢。请查看我从NewRelic获得的网站性能截图。我不知道如何在我的CentOS服务器上优化memcached。请查看Memcached的配置和性能截图。我觉得总连接数很高。请查看下面的实时统计数据下面是我在我的网站中使用Memcached的方式connect('localhost',11211)ordie("Couldnotconnect");}if($result=$memcache->set($key,$var,$flag,time()+$expire)){returnTRUE;}else{returnFALSE;}}funct

PHP odbc_result() 似乎在 5.5+ 中为 varchar 字段返回随机未初始化的内存;在 5.4 中工作的相同代码

我正在使用ODBC连接来检索Windows服务器上的数据。将PHP从5.4升级到5.6(以及5.5)后,所有varchar字段似乎都返回随机未初始化的内存,尽管字符串长度与被查询字段的长度匹配。例如,在5.4中返回字符串“Test.txt”的查询在5.5+中返回以下内容:我已经比较了两个版本之间的php.ini设置,它们在与字符集和ODBC设置相关的具体内容方面似乎是相同的。我可以同时在同一个ODBC资源上并排运行两个版本并获得这些结果。日期和整数等非varchar字段打印正确。我只是运行从http://windows.php.net/download下载的x86线程安全php.exe

PHP文件上传到内存

我想从html表单上传文件,将其发布到PHP并将其加载到内存中,而不是将其写入文件。是否可以上传文件并将其保存在内存中,还是必须将其写入文件? 最佳答案 PUT选项很酷。如果你想使用POST和$_FILES,我想你能得到的最接近点是upload_tmp_dir。在ramdisk上。 关于PHP文件上传到内存,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1580083/

php内存多少太多了

我目前正在使用我自己的框架重写我的网站(它非常简单并且完全满足我的需要,我不需要Zend或CakePHP之类的东西)。我做了很多工作来确保所有内容都被正确缓存,在文件中缓存页面以避免sql查询并通常限制sql查询的数量。总的来说,它看起来非常快。首页(超过100次)平均耗时为0.046152微秒。但是我不确定的一件事是我是否已经做了足够的工作来减少php内存使用。我唯一一次遇到问题是在上传大文件时。使用memory_get_peak_usage(TRUE),我认为它会返回脚本运行时使用的最大内存量,平均值(超过100次)为1572864字节。这样好吗?我知道你不知道我在做什么(这很简单